Di Network Import
Overview
The DI Network is a specialized type of network within our system designed to serve specific customer based on their rate card types. This documentation provides details on DI Network functionality, criteria for customer inclusion, and the steps for importing a DI Network.
What is a DI Network?
A DI Network is a network that serves customers with unique rate card types. The rate card types associated with DI Network include
- ViSN with DI Network
- ViSN with DI Network and Paybill
In addition to supporting these specialized rate cards, the DI Network can also handle customers with one-to-one relationships, similar to a traditional network setup. This flexibility allows it to serve both individual customers and customers with specialized rate cards.
download sample DI Network import file.
DI Network
Column Position | Header Name | Description | Datatype | Validation | Max length | Mandatory | Default Value | Example |
---|---|---|---|---|---|---|---|---|
A | DI Group ID | Id of the Group | string | A-Z, 0-9 and all special characters | 30 | No | ymaA5vcxNWOwzKOdvIMA | |
B | DI Supplier ID | Id of the Supplier | string | A-Z and 0-9 | 20 | No | lpEfZekDPAabVoyzcFxM | |
C | ERP Garage ID | External Rate Provider Garage ID | Number | 0-9 | - | No | 1900 | |
D | ERP Garage Group ID | External Rate Provider Garage Group ID | Number | 0-9 | - | No | 768 | |
E | Locale | Locale of the supplier | string | en_GB(The string should be en_GB for uk supplier) or en_IE(The string should be en_IE for Ireland supplier) | - | Yes | en_GB | |
F | Group ID | Group ID of the supplier | string | A-Z and 0-9 | 20 | Yes | DIVSN10024 | |
G | has FNP | FNB Availability Status | string | Y or N | 1 | No | N | Y |
H | FNP Band | FNP band value | String | Band 1 LA1, Band 2 LA1, Band 3 LA1, Band 5 (M25) LA1, Band 1 LA2, Band 2 LA2, Band 3 LA2, Band 5 (M25) LA2, Band 1 LA3, Band 2 LA3, Band 3 LA3, Band 5 (M25) LA3, NONE | 20 | Yes | Band 1 LA1 | |
I | Supplier Group Name | Group Name of the supplier | string | A-Z ,0-9 and all special characters | 50 | Yes | Bellinger & Sons Vauxhall Wantage | |
J | Supplier ID | Id of the supplier | string | A-Z ,0-9 | 20 | No | AD13HBG | |
K | Supplier Name | Name of the supplier | string | A-Z ,0-9 and all special characters | 50 | No | Ancaster Dartford Renault | |
L | Paybill | Determines how the suppliers are paid. | string | VISN or DIRECT | - | Yes | VISN | |
M | VAT Registration Number | VAT Registration Number | string | A-Z ,0-9 | 20 | No | VAT1234 | |
N | Company Number | Company Number | string | A-Z ,0-9 | 20 | No | CMP1234 | |
O | Nominated Dealer Manager | Nominated Dealer Manager | string | A-Z ,0-9, hyphen and space | 20 | Yes | Steve Philips | |
P | Address 1 | Building Number | string | A-Z ,0-9 and all special characters | 20 | No | 88 | |
Q | Address 2 | Address 2 | string | A-Z ,0-9 and all special characters | 50 | No | Plaistow Lane | |
R | Address 3 | Address 3 | string | A-Z ,0-9 and all special characters | 50 | No | Bromley | |
S | Address 4 | Address 4 | string | A-Z ,0-9 and all special characters | 50 | No | Kent | |
T | Address 5 | Address 5 | string | A-Z ,0-9 and all special characters | 50 | No | Middlesex | |
U | Postcode | Postcode | string | Standard UK and Ireland postcode validation | - | Yes | SE20 7TF | |
V | Region 1 | Region 1 | string | A-Z ,0-9, hyphen and space | 50 | No | Evans Halshaw | |
W | Region 2 | Region 2 | string | A-Z ,0-9, hyphen and space | 50 | No | East Sussex | |
X | Region 3 | Region 3 | string | A-Z ,0-9, hyphen and space | 50 | No | BrightonCCC | |
Y | Primary Phone Number | Primary Phone Number | string | A-Z ,0-9 and all special characters | 20 | Yes | 02082 908700 | |
Z | Booking Phone Number | Booking Phone Number | string | A-Z ,0-9 and all special characters | 20 | No | 02082 908700 | |
AA | Fax Number | Fax Number | string | A-Z ,0-9 and all special characters | 20 | No | 02087 689200 | |
AB | email of the supplier | string | A-Z ,0-9 and all special characters | 100 | No | vishwa@digitalinnk.com | ||
AC | description | description | string | A-Z ,0-9 and all special characters | 50 | No | supplier from Chelmsford | |
AD | notes | notes | string | A-Z ,0-9 and all special characters | 20 | No | Notes | |
AE | Max Height | Max Height | string | A-Z ,0-9,underscore,hyphen and plus sign | 20 | No | +123 | |
AF | Max Length | Max Length | string | A-Z ,0-9,underscore,hyphen and plus sign | 20 | No | -58 | |
AG | Max Weight | Max Weight | string | A-Z ,0-9,underscore,hyphen and plus sign | 20 | No | 77 | |
AH | Last Physical Audit | Last Physical Audit | - | No Validation available for this field | - | No | - | |
AI | Last Desktop Audit | Last Desktop Audit | - | No Validation available for this field | - | No | - | |
AJ | Collection Del | Collection Del | string | Y or N | 1 | No | N | Y |
AK | Collection NTD | Collection NTD | string | Y or N | 1 | No | N | Y |
AL | Collection Lead Time | Collection Lead Time | Number | 0-9 | 2 | No | 44 | |
AM | Collection Radius | Collection Radius | Number | 0-9 | 2 | No | 22 | |
AN | Collection Notes | Collection Notes | string | A-Z ,0-9 and all special characters | 30 | No | Collection Notes | |
AO | Courtesy Car | Courtesy Car | string | Y or N | 1 | No | Y | |
AP | Courtesy Car Ntd | Courtesy Car Ntd | string | Y or N | 1 | No | N | Y |
AQ | Courtesy Car Lead Time | Courtesy Car Lead Time | Number | 0-9 | 2 | No | 22 | |
AR | Courtesy Car Notes | Courtesy Car Notes | string | A-Z ,0-9 and all special characters | 30 | No | Notes about courtesy car service | |
AS | While You Wait | While You Wait | string | Y or N | 1 | No | N | Y |
AT | While You Wait NTD | While You Wait NTD | string | Y or N | 1 | No | N | Y |
AU | While You Wait Lead Time | While You Wait Lead Time | Number | 0-9 | 2 | No | 22 | |
AV | While You Wait Notes | While You Wait Notes | string | A-Z ,0-9 and all special characters | 30 | No | Notes about while you wait service | |
AW | Drop Off | Drop Off | string | Y or N | 1 | No | N | Y |
AX | Drop Off NTD | Drop Off NTD | string | Y or N | 1 | No | N | Y |
AY | Drop Off Lead Time | Drop Off Lead Time | Number | 0-9 | 2 | No | 43 | |
AZ | Out Of Hours | Out Of Hours | string | Y or N | 1 | No | N | Y |
BA | Mobile | Mobile | string | Y or N | 1 | No | N | Y |
BB | Mobile Lead Time | Mobile Off Lead Time | Number | 0-9 | 2 | No | 43 | |
BC | Mobile Radius | Mobile Radius | Number | 0-9 | 3 | No | 43 | |
BD | Franchise | Franchise | string | A-Z ,0-9 and all special characters | 30 | Yes | All | |
BE | Independent | Independent | string | Y or N | 1 | No | N | Y |
BF | Is On ViSN | Is On ViSN | string | Y or N | 1 | No | N | Y |
BG | Bosch Status | Bosch Status | string | A-Z ,0-9 | 8 | No | - | |
BH | Network | Network | string | A-Z ,0-9 | 8 | No | - | |
BI | Network Level | Network Level | string | A-Z ,0-9 | 8 | No | - | |
BJ | Labour Car | Labour Car | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BK | Labour Rate LCV | Labour Rate LCV | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BL | Labour Rate EV | Labour Rate EV | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BM | Parts Discount | Parts Discount | string | 0-9 and .(decimal number) | 5 | No | 94.5 | |
BN | MOT Class1 | MOT Class1 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BO | MOT Class2 | MOT Class2 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BP | MOT Class3 | MOT Class3 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BQ | MOT Class4 | MOT Class4 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BR | MOT Class4a | MOT Class4a | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BS | MOT Class5 | MOT Class5 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BT | MOT Class5a | MOT Class5a | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BU | MOT Class7 | MOT Class7 | string | 0-9, .(three digit decimal number) | 6 | No | 941.5 | |
BV | Semi Synthetic1 | Semi Synthetic1 | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BW | Semi Synthetic2 | Semi Synthetic2 | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BX | Synthetic1 | Synthetic1 | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BY | Synthetic2 | Synthetic2 | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
BZ | Synthetic3 | Synthetic3 | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CA | Ad Blue | Ad Blue | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CB | Brake Fluid | Brake Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CC | Air Conditioning Coolant | Air Conditioning Coolant | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CD | Anti Freeze | Anti Freeze | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CE | Automatic Transmission Fluid | Automatic Transmission Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CF | Axle Oil | Axle Oil | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CG | Gearbox Oil Mineral | Gearbox Oil Mineral | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CH | Gearbox Oil Synthetic | Gearbox Oil Synthetic | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CI | Hydraulic Fluid | Hydraulic Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CJ | Long Life Oil | Long Life Oil | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CK | Mineral Oil | Mineral Oil | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CL | Other Fluid | Other Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CM | Power Steering Fluid | Power Steering Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CN | Refrigerator Coolant | Refrigerator Coolant | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CO | Suspension Fluid | Suspension Fluid | string | 0-9 and .(decimal number) | 6 | No | 4.5 | |
CP | Merchant Fee | Merchant Fee | string | No validation present | - | No | - | |
CQ | Account System Reference | Account System Reference | string | A-Z,0-9 | 8 | No | ABC123 | |
CR | Service And Maintenance Repair | Service And Maintenance Repair | string | Y or N | 1 | No | N | Y |
CS | Accident Management Body Shop | Accident Management Body Shop | string | Y or N | 1 | No | N | Y |
CT | Tyres | Tyres | string | Y or N | 1 | No | N | Y |
CU | Glass | Glass | string | Y or N | 1 | No | N | Y |
CV | MOT | MOT | string | Y or N | 1 | No | N | Y |
CW | Breakdown | Breakdown | string | Y or N | 1 | No | N | Y |
CX | Car | Car | string | Y or N | 1 | No | N | Y |
CY | Commercial Under 3_5 tonne | Commercial Under 3_5 tonne | string | Y or N | 1 | No | N | Y |
CZ | Commercial Over 3_5 tonne | Commercial Over 3_5 tonne | string | Y or N | 1 | No | N | Y |
DA | HGV | HGV | string | Y or N | 1 | No | N | Y |
DB | MotorBikes | MotorBikes | string | Y or N | 1 | No | N | Y |
DC | Electric vehicles Car | Electric vehicles Car | string | Y or N | 1 | No | N | Y |
DD | Electric vehicles LCV | Electric vehicles LCV | string | Y or N | 1 | No | N | Y |
DE | Trailer | Trailer | string | Y or N | 1 | No | N | Y |
DF | Fridge | Fridge | string | Y or N | 1 | No | N | Y |
DG | Crane | Crane | string | Y or N | 1 | No | N | Y |
DH | Wash and Vac | Wash and Vac | string | Y or N | 1 | No | N | Y |
DI | Valet | Valet | string | Y or N | 1 | No | N | Y |
DJ | Complimentary Refreshments | Complimentary Refreshments | string | Y or N | 1 | No | N | Y |
DK | WiFi | Wifi | string | Y or N | 1 | No | N | Y |
DL | Parking | Parking | string | Y or N | 1 | No | N | Y |
DM | Disposal Charges | Disposal Charges | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DN | Valve | Valve | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DO | Wheel Balance | Wheel Balance | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DP | Serving Proximity | Serving Proximity | string | should be a number between '0' and '999' (if serving proximity is not added, then 50 miles will be used as default) | 3 | No | 955 | |
DQ | Wheel Alignment2 | Wheel Alignment2 | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DR | Wheel Alignment4 | Wheel Alignment4 | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DS | Rebate Amount | Rebate Amount | string | Decimal Number(format should be 00.00) | - | No | 99.47 | |
DT | Rebate Percentage | Rebate Percentage | string | Decimal Number(format should be 00.00) | - | No | 99.47 |
Importing a Di Network
Preparation
Create a new branch with Jira task number in the branch name
Delete all the files within the importFiles folder to prevent accidental import of incorrect files
Create a folder with the current sprint number
Copy the file that needs to be imported
Go to
package.json
, find the linevalidate:diNetworkImport
Modify
--file
with the relative path of the fileSave the package.json
Validating locally
in a terminal run
npm run build
in a terminal run
npm run validate:diNetworkImport
If there are no errors, push the code
Validating in workflow
Go to Action of Import-manger
Find
<Environment> - on-demand-import
Select the branch that was created for this import
Enter script name as
validate:diNetworkImport
Leave Overrides empty
Importing the file
If the validation has passed
Go to Action of Import-manger
Find
<Environment> - on-demand-import
Select the branch that was created for this import
Enter script name as
validate:diNetworkImport
Enter
--persist
in Overrides field
Importing and Validating the file via cloud run
Creating Schedulers for validating the di network file
- Go to Cloud Scheduler and select the CREATE JOB
Setup Required
A Scheduler should be created cloud scheduler with the following parameters
- Name: di_network_validation
- Region: europe-west2
- Frequency: 0 0 31 12 1
- TimeZone: GMT London
- Target type: HTTP
- URL: https://import-manager-36r2bu4izq-uc.a.run.app/di-network-import
- HTTP method: POST
- Auth header: select OIDC token
- Service account: cloud-run-import-customer-contract
- body: a JSON object including the following parameters
JSON object for di_network_validation scheduler
{
"persist": "false",
"bucket": "biddirect-2.appspot.com",
"appDirectory": "/usr/src/app/",
"importPath": "imports/fileDrop/",
"importFileDropPath": "imports/fileDrop/",
"importFileName": "diNetworkImport.csv",
"email": "mailgun@digitalinnk.com",
"fatalErrorEmailToAddress": "mailgun@digitalinnk.com"
}
Create scheduler for validating di network
Creating Schedulers for importing the di network file
- Go to Cloud Scheduler and select the CREATE JOB
Setup Required
A Scheduler should be created cloud scheduler with the following parameters
- Name: di_network_import
- Region: europe-west2
- Frequency: 0 0 31 12 1
- TimeZone: GMT London
- Target type: HTTP
- URL: https://import-manager-36r2bu4izq-uc.a.run.app/di-network-import
- HTTP method: POST
- Auth header: select OIDC token
- Service account: cloud-run-import-customer-contract
- body: a JSON object including the following parameters
JSON object for di_network_import scheduler
{
"persist": "true",
"bucket": "biddirect-2.appspot.com",
"appDirectory": "/usr/src/app/",
"importPath": "imports/fileDrop/",
"importFileDropPath": "imports/fileDrop/",
"importFileName": "diNetworkImport.csv",
"email": "mailgun@digitalinnk.com",
"fatalErrorEmailToAddress": "mailgun@digitalinnk.com"
}
Create scheduler for validating di network
Preparation:
- Bucket name is
biddirect-2.appspot.com
and it will vary for higher envs and the file path should beimports/fileDrop
, where you can drop the CSV file named "diNetworkImport". This action will place the file in the specified location within the designated bucket.
Validation:
- Go to Cloud Scheduler
- Run di_network_validation job (job name could be different on other env)
logs in cloud
Importing:
- Go to Cloud Scheduler
- Run di_network_import job (job name could be different on other env)
logs in cloud
Testing
- Suppliers will be created under the specified group Id. This can be checked in the list of suppliers which belong to the group in DI Admin
Status: Approved
Category: Protected
Authored By: Hadley on May 30, 2024